<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <!-- import CSS -->
    <link rel="stylesheet" href="https://cdn.staticfile.org/element-ui/2.15.9/theme-chalk/index.css">
</head>
<body>
<div id="app">
    <input type="text" placeholder="姓名" v-model="emp.name"><br>
    <input type="text" placeholder="工作" v-model="emp.job"><br>
    <input type="text" placeholder="工资" v-model="emp.sal"><br>
    <input type="button" value="添加员工" @click="add()"><br>

    <el-table :data="arr" style="width: 100%">
        <!--prop=property属性，设置属性名称，用于匹配数组中对象的属性
        label设置表头  width设置宽度-->
        <el-table-column type="index" label="序号" width="180"></el-table-column>
        <el-table-column prop="name" label="姓名" width="180"></el-table-column>
        <el-table-column prop="job" label="工作" width="180"></el-table-column>
        <el-table-column prop="sal" label="工资"></el-table-column>
        <el-table-column label="操作">
            <!--template是自定义列时必须添加的标签，并且在里面需要有slot-scope属性-->
            <!--scope变量里面包含当前行的信息
            scope.$index代表当前行的下标
            scope.$row代表当前行对应数组里面的对象-->
            <template slot-scope="scope">
                <el-button size="mini" type="danger" @click="handleDelete(scope.$index, scope.row)">删除</el-button>
            </template>
        </el-table-column>
    </el-table>

</div>
</body>
<!-- import Vue before Element -->
<script src="https://cdn.staticfile.org/vue/2.6.14/vue.min.js"></script>
<!-- import JavaScript -->
<script src="https://cdn.staticfile.org/element-ui/2.15.9/index.min.js"></script>
<script>
   let v =  new Vue({
        el: '#app',
        data: function() {
            return {
                arr:[],
                emp:{name:"",job:"",sal:""}
            }
        },
       methods:{
            add(){
                //把员工信息存入arr数组
                v.arr.push(v.emp);
            },
           handleDelete(i,e){
                v.arr.splice(i,1);
                v.$message.warning(e.name+"被删除了");
           }
       }
    })
</script>
</html>